#include <iostream>
using namespace std;

const int N=2010;
string s, t;
int dp[N][N];


int main()
{
	cin>>s>>t;
	s=" "+s, t=" "+t;
	
	int n=s.size(), m=t.size();
	for(int i=0; i<=n; i++) dp[i][0]=i;
	for(int i=1; i<=m; i++) dp[0][i]=i;
	for(int i=1; i<=n; i++)
	{
		for(int j=1; j<=m; j++)
		{
			if(s[i]==t[j]) dp[i][j]=dp[i-1][j-1];
			else
			{
				int t=min(dp[i-1][j], dp[i][j-1]);
				t=min(t, dp[i-1][j-1]);
				dp[i][j]=t+1;	
			} 
		}
	}
	
	cout<<dp[n][m]<<endl;
	return 0;
}
